package com.evil.common.application.dto.process;

import com.evil.common.application.dto.process.node.NodeBaseDTO;
import lombok.Data;
import lombok.EqualsAndHashCode;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

/**
 * 完成流程实例 请求实体
 *
 * @author liyang
 * @date 2022-08-08 00:00
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class ProcessCompleteTaskReqDTO extends ProcessBaseReqDTO {

    /**
     * 流程实例id
     */
    @NotBlank(message = "流程实例id不能为空")
    private String processInstanceId;

    /**
     * 流转节点
     */
    @NotNull(message = "流转节点不能为空")
    private NodeBaseDTO nodeBaseDTO;

    /**
     * 流转类型
     */
    @NotNull(message = "流转类型不能为空")
    private Integer completeType;

    /**
     * 撤回节点
     */
    private NodeBaseDTO fallbackNode;

    /**
     * 备注
     */
    private String remark;
}
